aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorSchuyler Eldridge2018-08-23 23:42:30 -0400
committerSchuyler Eldridge2018-11-07 13:49:16 -0500
commit7a4f15aa27aed8ce9cc180fb89126a954638e102 (patch)
tree3af4759b58f92a955243464cc4ece049581003eb /src
parentbaf787035779ef783c17b549b1ed15ae5b46e08d (diff)
Add MemLibOptions RegisteredLibrary
This shows an example of using a RegisteredLibrary, with the appropriate META-INF ServiceLoader entry, that adds options from the InferReadWrite and ReplSeqMem transforms. Signed-off-by: Schuyler Eldridge <schuyler.eldridge@ibm.com>
Diffstat (limited to 'src')
-rw-r--r--src/main/resources/META-INF/services/firrtl.options.RegisteredLibrary1
-rw-r--r--src/main/scala/firrtl/passes/memlib/MemLibOptions.scala15
2 files changed, 16 insertions, 0 deletions
diff --git a/src/main/resources/META-INF/services/firrtl.options.RegisteredLibrary b/src/main/resources/META-INF/services/firrtl.options.RegisteredLibrary
new file mode 100644
index 00000000..abfcceb0
--- /dev/null
+++ b/src/main/resources/META-INF/services/firrtl.options.RegisteredLibrary
@@ -0,0 +1 @@
+firrtl.passes.memlib.MemLibOptions
diff --git a/src/main/scala/firrtl/passes/memlib/MemLibOptions.scala b/src/main/scala/firrtl/passes/memlib/MemLibOptions.scala
new file mode 100644
index 00000000..2f26e4e5
--- /dev/null
+++ b/src/main/scala/firrtl/passes/memlib/MemLibOptions.scala
@@ -0,0 +1,15 @@
+// See LICENSE for license details.
+
+package firrtl.passes.memlib
+
+import firrtl._
+import firrtl.options.RegisteredLibrary
+import scopt.OptionParser
+
+class MemLibOptions extends RegisteredLibrary {
+ val name: String = "MemLib Options"
+ def addOptions(p: OptionParser[AnnotationSeq]): Unit =
+ Seq( new InferReadWrite,
+ new ReplSeqMem )
+ .map(_.addOptions(p))
+}