aboutsummaryrefslogtreecommitdiff
path: root/src/main/scala/firrtl/ir
diff options
context:
space:
mode:
authorjackkoenig2016-09-23 13:44:57 -0700
committerJack Koenig2016-10-26 15:15:37 -0700
commit4c3b4f4dc10c380a101df75cb561e3f79f1a6abe (patch)
treefeb382146fff5d5496079b6d7c4d3d530bd65cda /src/main/scala/firrtl/ir
parent4b8a0d2af52ceeb3ff5d05082af53bac76744361 (diff)
Add RawString ExtModule parameter support
While unsafe, this supports Verilog parameter types. Tests now require Verilator 3.884+ to pass.
Diffstat (limited to 'src/main/scala/firrtl/ir')
-rw-r--r--src/main/scala/firrtl/ir/IR.scala7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/main/scala/firrtl/ir/IR.scala b/src/main/scala/firrtl/ir/IR.scala
index b9b31427..236a7884 100644
--- a/src/main/scala/firrtl/ir/IR.scala
+++ b/src/main/scala/firrtl/ir/IR.scala
@@ -457,6 +457,13 @@ case class DoubleParam(name: String, value: Double) extends Param {
case class StringParam(name: String, value: StringLit) extends Param {
override def serialize: String = super.serialize + value.serialize
}
+/** Raw String Parameter
+ * Useful for Verilog type parameters
+ * @note Firrtl doesn't guarantee anything about this String being legal in any backend
+ */
+case class RawStringParam(name: String, value: String) extends Param {
+ override def serialize: String = super.serialize + s"'$value'"
+}
/** Base class for modules */
abstract class DefModule extends FirrtlNode with IsDeclaration {