aboutsummaryrefslogtreecommitdiff
path: root/src/test/scala/firrtl/testutils
diff options
context:
space:
mode:
authorJack Koenig2021-03-18 23:31:51 -0700
committerGitHub2021-03-18 23:31:51 -0700
commitb274b319d4a4014c154f06bfc174beba461d6fce (patch)
tree36f3c83f5ceb3d820bc6d6073d8ad2de202c8773 /src/test/scala/firrtl/testutils
parent94d1bee4c23bd3d8f99dae3ca431ffaa5dc1410d (diff)
Ensure InlineCasts does not inline complex Expressions (#2130)
Previously, InlineCasts could inline complex (ie. non-cast) Expressions into other complex Expressions. Now it will only inline so long as there no more than 1 complex Expression in the current nested Expression. Co-authored-by: Albert Magyar <albert.magyar@gmail.com>
Diffstat (limited to 'src/test/scala/firrtl/testutils')
-rw-r--r--src/test/scala/firrtl/testutils/FirrtlSpec.scala8
1 files changed, 6 insertions, 2 deletions
diff --git a/src/test/scala/firrtl/testutils/FirrtlSpec.scala b/src/test/scala/firrtl/testutils/FirrtlSpec.scala
index 24793437..63def26a 100644
--- a/src/test/scala/firrtl/testutils/FirrtlSpec.scala
+++ b/src/test/scala/firrtl/testutils/FirrtlSpec.scala
@@ -165,10 +165,14 @@ trait FirrtlRunners extends BackendCompilationUtilities {
/** Compiles input Firrtl to Verilog */
def compileToVerilog(input: String, annotations: AnnotationSeq = Seq.empty): String = {
+ compileToVerilogCircuitState(input, annotations).getEmittedCircuit.value
+ }
+
+ /** Compiles input Firrtl to Verilog */
+ def compileToVerilogCircuitState(input: String, annotations: AnnotationSeq = Seq.empty): CircuitState = {
val circuit = Parser.parse(input.split("\n").toIterator)
val compiler = new VerilogCompiler
- val res = compiler.compileAndEmit(CircuitState(circuit, HighForm, annotations), extraCheckTransforms)
- res.getEmittedCircuit.value
+ compiler.compileAndEmit(CircuitState(circuit, HighForm, annotations), extraCheckTransforms)
}
/** Compile a Firrtl file